package com.maikobi.maikobi.constant;

/**
 * 用户相关接口限流 Key 常量类
 * 用于统一定义用户模块下所有需要限流的 Redis Key。
 * @author: Maiko7
 * @create: 2025-07-14 9:02
 */
public interface RateLimiterKeyConstants {

    /**
     * 用户注册接口
     */
//    String USER_REGISTER = "user_register";
    String USER_REGISTER = "user_register:#{ip}";

    /**
     * 用户登录接口
     */
//    String USER_LOGIN = "user_login";
    String USER_LOGIN = "user_login:#{ip}";

    /**
     * 发送验证码接口
     */
//    String USER_SEND_CODE = "user_send_code";
    String USER_SEND_CODE = "user_send_code:#{ip}";

    /**
     * 用户信息更新接口
     */
//    String USER_UPDATE_INFO = "user_update_info";
    String USER_UPDATE_INFO = "user_update_info:#{userId}";

    /**
     * 用户搜索接口
     */
//    String USER_SEARCH = "user_search";
    String USER_SEARCH = "user_search:#{userId}";

    /**
     * 用户删除接口
     */
//    String USER_DELETE = "user_delete";
    String USER_DELETE = "user_delete:#{userId}";

    /**
     * 用户添加接口
     */
    String USER_ADD = "user_add:#{userId}";

    /**
     * 管理员更新用户信息接口
     */
    String USER_UPDATE = "user_update:{userId}";


    /**
     * 用户更新自己信息接口
     */
    String USER_UPDATE_MY = "user_update:{userId}";
}